Python, point d'intersection - Ressources supplémentaires

import numpy as np
import matplotlib.pyplot as plt

# Années
annees = [1790, 1800, 1810, 1820, 1830, 1840, 1850, 1860, 1870, 1880, 1890, 1900, 1910, 1920, 1930, 1940, 1950, 1960, 1970, 1980, 1990, 2000]
population = [0.003929, 0.005236, 0.006978, 0.009300, 0.012395, 0.016519, 0.022016, 0.029342, 0.039105, 0.052117, 0.069459, 0.092571, 0.123373, 0.164424, 0.219135, 0.290251, 0.389229, 0.518742, 0.691350, 0.921392, 1.227978, 1.636579]
production = [0.100000, 0.140000, 0.180000, 0.220000, 0.260000, 0.300000, 0.340000, 0.380000, 0.420000, 0.460000, 0.500000, 0.540000, 0.580000, 0.620000, 0.660000, 0.700000, 0.740000, 0.780000, 0.820000, 0.860000, 0.900000, 0.940000]

# Convertir les listes en arrays pour interpolation
annees_array = np.array(annees)
population_array = np.array(population)
production_array = np.array(production)

# Interpolation des courbes pour trouver le point d'intersection
years = np.arange(1790, 2001)
interp_population = np.interp(years, annees_array, population_array)
interp_production = np.interp(years, annees_array, production_array)

# Calcul de la différence
difference = interp_population - interp_production

# Trouver le point d'intersection
index_of_intersection = np.where(np.diff(np.sign(difference)))[0]
intersection_year = years[index_of_intersection][0]

# Tracer les courbes et le point d'intersection
plt.figure(figsize=(10, 6))
plt.plot(annees, population, label="Population Américaine (en milliards)", color='b', marker='o')
plt.plot(annees, production, label="Capacité de Production Agricole (en milliards)", color='g', marker='o')
plt.axvline(x=intersection_year, color='r', linestyle='--', label=f'Intersection en {intersection_year}')
plt.xlabel("Année")
plt.ylabel("Nombre de personnes / Capacité de production (en milliards)")
plt.title("Évolution de la Population Américaine et de la Production Agricole (1790-2000)")
plt.legend()
plt.grid(True)
plt.show()

print(f"L'année d'intersection est {intersection_year}.")

Source : https://lesmanuelslibres.region-academique-idf.fr
Télécharger le manuel : https://forge.apps.education.fr/drane-ile-de-france/les-manuels-libres/enseignement-scientifique-terminale ou directement le fichier ZIP
Sous réserve des droits de propriété intellectuelle de tiers, les contenus de ce site sont proposés dans le cadre du droit Français sous licence CC BY-NC-SA 4.0